package com.shuiyihan.design.creative.Singleton;

/**
 * 单例模式 (普通版)
 *
 * 确保某一个类中只有一个实例,而且自行实例化并向整个系统提供这个实例
 *
 * 1.单例类只能有一个实例
 * 2.单例类必须自己创建自己的唯一实例
 * 3.单例类必须给所有其他对象提供这一实例
 *
 * @author shuiyihan
 */
public class Singleton {

    /**
     * 1.单例类只能有一个实例
     **/
    private static Singleton singleton = new Singleton();

    /**
     * 2.单例类必须自己创建自己的唯一实例
     **/
    private Singleton() {
    }

    /**
     * 3.单例类必须给所有其他对象提供这一实例
     **/

    public static Singleton getInstance() {
        return singleton;
    }
}
